﻿/*************************************************************************************
 *
 * 文 件 名:   Interceptor
 * 描    述: 
 * 
 * 版    本：  V1.0
 * 创 建 者：  user 
 * 创建时间：  2021/3/6 16:55:40
 * ======================================
 * 历史更新记录
 * 版本：V          修改时间：         修改人：
 * 修改内容：
 * ======================================
*************************************************************************************/
using Castle.DynamicProxy;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CastleExample
{


    public class Interceptor : StandardInterceptor
    {
        protected override void PreProceed(IInvocation invocation)
        {
            Console.WriteLine("调用前的拦截器， 方法名是: {0}", invocation.Method.Name);
            //base.PreProceed(invocation);
        }

        protected override void PerformProceed(IInvocation invocation)
        {
            Console.WriteLine("拦截的方法返回时调用的拦截， 方法名是: {0}", invocation.Method.Name);
            base.PerformProceed(invocation);
        }

        protected override void PostProceed(IInvocation invocation)
        {
            Console.WriteLine("调用后的拦截器， 方法名是: {0}", invocation.Method.Name);
            //base.PostProceed(invocation);
        }
    }
}
